package com.example.demo.convert;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.example.demo.domain.entity.CheckInDO;
import com.example.demo.domain.entity.GiftGivingDO;
import com.example.demo.domain.param.CheckInCreateParam;
import com.example.demo.domain.param.CheckInUpdateParam;
import com.example.demo.domain.param.GiftGivingCreateParam;
import com.example.demo.domain.param.GiftGivingUpdateParam;
import com.example.demo.domain.vo.CheckInVO;
import com.example.demo.domain.vo.GiftGivingVO;
import org.mapstruct.Mapper;
import org.mapstruct.factory.Mappers;

/**
 * PointsConvert
 *
 * @author haochen78
 * @date 2025/10/3 21:52
 **/
@Mapper
public interface PointsConvert {

    PointsConvert INSTANCE = Mappers.getMapper(PointsConvert.class);

    Page<CheckInVO> checkInDoToVoPage(Page<CheckInDO> page);

    CheckInDO checkInParamToDo(CheckInCreateParam param);

    CheckInDO checkInParamToDo(CheckInUpdateParam param);

    Page<GiftGivingVO> giftGivingDoToVoPage(Page<GiftGivingDO> page);

    GiftGivingDO giftGivingParamToDo(GiftGivingCreateParam param);

    GiftGivingDO giftGivingParamToDo(GiftGivingUpdateParam param);
}
